From: Claudio Cambra Date: Mon, 20 Jan 2025 03:59:27 +0000 (+0800) Subject: Add config entry to override server chunk size X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~12^2~2^2~117^2~8 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:///%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:/?a=commitdiff_plain;h=93570808d40d37efeed1607062224f55b594bd66;p=nextcloud-desktop.git Add config entry to override server chunk size Signed-off-by: Claudio Cambra --- diff --git a/src/gui/folder.cpp b/src/gui/folder.cpp index ee028cdd2..070f75759 100644 --- a/src/gui/folder.cpp +++ b/src/gui/folder.cpp @@ -1154,7 +1154,7 @@ SyncOptions Folder::initializeSyncOptions() const opt._parallelNetworkJobs = account->isHttp2Supported() ? 20 : 6; // Chunk V2: Size of chunks must be between 5MB and 5GB, except for the last chunk which can be smaller - if (const auto capsMaxChunkSize = account->capabilities().maxChunkSize(); capsMaxChunkSize <= 0) { + if (const auto capsMaxChunkSize = account->capabilities().maxChunkSize(); capsMaxChunkSize <= 0 && !cfgFile.overrideServerChunkSize) { opt.setMinChunkSize(capsMaxChunkSize); opt.setMaxChunkSize(capsMaxChunkSize); opt._initialChunkSize = capsMaxChunkSize); diff --git a/src/libsync/configfile.cpp b/src/libsync/configfile.cpp index 2b1cda432..1297e5067 100644 --- a/src/libsync/configfile.cpp +++ b/src/libsync/configfile.cpp @@ -70,6 +70,7 @@ static constexpr char overrideLocalDirC[] = "overrideLocalDir"; static constexpr char isVfsEnabledC[] = "isVfsEnabled"; static constexpr char geometryC[] = "geometry"; static constexpr char timeoutC[] = "timeout"; +static constexpr char overrideServerChunkSize[] = "overrideServerChunkSize"; static constexpr char chunkSizeC[] = "chunkSize"; static constexpr char minChunkSizeC[] = "minChunkSize"; static constexpr char maxChunkSizeC[] = "maxChunkSize"; @@ -258,6 +259,12 @@ int ConfigFile::timeout() const return settings.value(QLatin1String(timeoutC), 300).toInt(); // default to 5 min } +bool ConfigFile::overrideServerChunkSize() const +{ + QSettings settings(configFile(), QSettings::IniFormat); + return settings.value(QLatin1String(overrideServerChunkSize), false).toBool(); +} + qint64 ConfigFile::chunkSize() const { QSettings settings(configFile(), QSettings::IniFormat); diff --git a/src/libsync/configfile.h b/src/libsync/configfile.h index 844036336..27a83a5c2 100644 --- a/src/libsync/configfile.h +++ b/src/libsync/configfile.h @@ -177,6 +177,7 @@ public: void setShowInExplorerNavigationPane(bool show); [[nodiscard]] int timeout() const; + [[nodiscard]] bool overrideServerChunkSize() const; [[nodiscard]] qint64 chunkSize() const; [[nodiscard]] qint64 maxChunkSize() const; [[nodiscard]] qint64 minChunkSize() const;